package com.ruben.state;

/**
 * 状态 （State） 接口会声明特定于状态的方法。 这些方法应能被其他所有具体状态所理解， 因为你不希望某些状态所拥有的方法永远不会被调用。
 *
 * @author <achao1441470436@gmail.com>
 * @since 2021/10/17 18:03
 */
public interface State {

    /**
     * 当前状态执行的方法
     */
    void doThis();

    /**
     * 当前状态执行的方法
     */
    void doThat();

    /**
     * 设置上下文
     *
     * @param context 上下文
     */
    void setContext(Context context);
}
